#ifndef MAP_H
#define MAP_H
#include <vector>
#include <windows.h>

#ifndef COLOR
#define FW 	FOREGROUND_RED |\
			FOREGROUND_GREEN |\
			FOREGROUND_BLUE
#define FR	FOREGROUND_RED
#define FG	FOREGROUND_GREEN
#define FB 	FOREGROUND_BLUE
#define FY	FOREGROUND_GREEN |\
			FOREGROUND_RED
#define FP	FOREGROUND_RED |\
			FOREGROUND_BLUE
#define FWI	FOREGROUND_RED |\
			FOREGROUND_GREEN |\
			FOREGROUND_BLUE |\
			FOREGROUND_INTENSITY
#define FRI	FOREGROUND_RED |\
			FOREGROUND_INTENSITY
#define FGI	FOREGROUND_GREEN |\
			FOREGROUND_INTENSITY
#define FBI	FOREGROUND_BLUE |\
			FOREGROUND_INTENSITY
#define FYI	FOREGROUND_GREEN |\
			FOREGROUND_RED |\
			FOREGROUND_INTENSITY
#define FPI	FOREGROUND_RED |\
			FOREGROUND_BLUE |\
			FOREGROUND_INTENSITY

#define BW	BACKGROUND_RED |\
			BACKGROUND_GREEN |\
			BACKGROUND_BLUE
#define BR	BACKGROUND_RED
#define BG	BACKGROUND_GREEN
#define BB 	BACKGROUND_BLUE
#define BY	BACKGROUND_RED |\
			BACKGROUND_GREEN
#define BP	BACKGROUND_RED |\
			BACKGROUND_BLUE
#define BWI	BACKGROUND_RED |\
			BACKGROUND_GREEN |\
			BACKGROUND_BLUE |\
			BACKGROUND_INTENSITY
#define BRI	BACKGROUND_RED |\
			BACKGROUND_INTENSITY
#define BGI	BACKGROUND_GREEN |\
			BACKGROUND_INTENSITY
#define BBI BACKGROUND_BLUE |\
			BACKGROUND_INTENSITY
#define BYI	BACKGROUND_RED |\
			BACKGROUND_GREEN |\
			BACKGROUND_INTENSITY
#define BPI	BACKGROUND_RED |\
			BACKGROUND_BLUE |\
			BACKGROUND_INTENSITY
#endif

void gotoxy(int x, int y);
class map{

public:
	
	std::vector<int> Accessable_Dest;
	/* variabel yang masih abstrak, yaitu array of integer yang berisi map-map apa saja yang bisa diakses melalui teleport dari map tersebut. 
	Akan diimplementasikan pada setiap kelas anak.*/
	virtual std::vector<int> GetDestination() = 0;
	/*fungsi yang masih abstrak, mengembalikan array of integer Accesable_Dest*/
	virtual void Display(int,int, int,int,int,int, int, int,int,int, int,int) = 0;
	/*fungsi yang masih abstrak, men-display seluruh area ke layar, akan diimplementasikan dalam setiap kelas anak*/
};

#endif

